/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package edu.os.dao.ephimov;

import  edu.os.dao.ephimov.*;
import  edu.os.dao.ephimov.interfaces.*;
import  edu.os.dao.ephimov.transferobjects.*;

import java.util.*;

import java.io.*;
/**
 *
 * @author shalash
 */

//УДАЛИТЬ ПОТОМ К ЧЕРТУ ЭТОТ КЛАСС
//Енто тестировочный класс. Так как я нифига не понял как вывести инфу в консоль, выведу на веб страницу!
public class Client {
   public DAOFactory objDAO;
   public ApplicationDAO appDAO;
    
   public Client() {
        
        objDAO = DAOFactory.getDAOFactory(DAOFactory.MEMORY);
        appDAO = objDAO.getApplicationDAO();                
    }
   
   public void AddApplication() {
       Application app = new Application();
       app.setName("Need For Speed");
       app.setDiscription("Гонки");
       appDAO.addApplication(app);
   }
   
   
   public String[] getAllApps() throws IOException{
       
       
       RandomAccessFile wr = new RandomAccessFile("C:\\myLogServer.txt", "rw");
       wr.seek(wr.length());
       
       wr.writeChars("log -- running: " + (new GregorianCalendar()).getTime() + "\n");
       
       
       List<Application> l = appDAO.getAllApplications();
       Iterator<Application> itr = l.iterator();
       
       
       
       String[] res = new String[l.size()];
       int count = 0;
       while (itr.hasNext()) {
           
           Application a = itr.next();
           res[count] = a.getIdApplication() + " " + a.getName() +" " + a.getDiscription() + " \n";
           ++ count;
       } 
       
       wr.writeChars("log -- running: " + (new GregorianCalendar()).getTime() + "\n");
       
       wr.close();
       
       return res;
   }
   
   @Override 
   public String toString() {
       return "";
   }
}
